home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
presto
/
presto10.lha
/
src
/
Makefile.mips
< prev
next >
Wrap
Makefile
|
1991-12-11
|
6KB
|
245 lines
#
# Presto Makefile
#
# The top level targets are:
# base: libpresto.a -- optimized verson
# base_debug: libpresto_d.a -- compiled with -g
# profile: libpresto_p.a -- quartz version, optimized
# profile_debug: libpresto_dp.a -- quartz version, with -g
# gprof: libpresto_pg.a -- compiled for gprof
#
# clean: clean up all subdirectories
#
P =
CC = cxx ## DEC field-test C++ compiler
CPP = /lib/cpp
DEST = /usr/local/lib
CCSUFFIX= C
CSUFFIX = c
VPATH = ..
.SUFFIXES:
.SUFFIXES: .o .c .$(CCSUFFIX) .y .l .s
DEFINES = -DPRESTO
CFLAGS2 =
CFLAGS1 = -g
CFLAGS = $(DEFINES) $(CFLAGS1) $(CFLAGS2)
LIBPRESTO = ./libpresto.a # optimized with -O flag
LIBPRESTO_D = ./libpresto_d.a # non-optimized
LIBPRESTO_P = ./libpresto_p.a # compiled for quartz, optimized
LIBPRESTO_DP = ./libpresto_dp.a # compiled for quartz, non-optimized
LIBPRESTO_GP = ./libpresto_pg.a # compiled for gprof, non-optimized
LDFLAGS =
LOWERCC = /bin/cc
WHERE =
CSRCFILES = shbrk.$(CCSUFFIX) smalloc.$(CCSUFFIX) SLOCK.$(CCSUFFIX) atack.$(CSUFFIX)
COBJFILES = shbrk.o shmalloc.o SLOCK.o atack.o
SRCS = callstate.$(CCSUFFIX) \
main_init.$(CCSUFFIX) \
main_main.$(CCSUFFIX) \
main_done.$(CCSUFFIX) \
mips_lock.s \
misc.$(CCSUFFIX) \
objects.$(CCSUFFIX) \
preempt.$(CCSUFFIX) \
presto.$(CCSUFFIX) \
process.$(CCSUFFIX) \
pstream.$(CCSUFFIX) \
scheduler.$(CCSUFFIX) \
scheduler_sig.$(CCSUFFIX) \
spinlock.$(CCSUFFIX) \
stack.$(CCSUFFIX) \
swtch.s \
synchro.$(CCSUFFIX) \
threads.$(CCSUFFIX) \
timer.$(CCSUFFIX) \
locks.$(CCSUFFIX) \
debug.$(CCSUFFIX)
OBJS = callstate.o \
main_init.o \
main_main.o \
main_done.o \
mips_lock.o \
misc.o \
objects.o \
preempt.o \
presto.o \
process.o \
pstream.o \
scheduler.o \
scheduler_sig.o \
spinlock.o \
stack.o \
swtch.o \
synchro.o \
threads.o \
timer.o \
locks.o \
debug.o \
$(COBJFILES)
HDRS = c.h \
config.h \
debug.h \
defs.h \
callstate.h \
locks.h \
machdep.h \
objects.h \
process.h \
pstream.h \
scheduler.h \
spinlock.h \
spinlock_impl.h \
synchro.h \
threads.h \
threadq.h \
timer.h \
main.h \
debug.h \
stack.h \
asmdefs.h \
hc_slock_asm.h
THREADHDRS =
all: base_debug base #profile profile_debug
clean:
rm -f */*.o */*..$(CCSUFFIX) */*.a
base:;
(cd Base; make -f ../Makefile _base "CFLAGS1=-O2")
_base: $(LIBPRESTO)
$(LIBPRESTO): $(P) $(OBJS)
ar rv $(LIBPRESTO) $(OBJS)
ranlib $(LIBPRESTO)
ln -s `pwd`/$(LIBPRESTO) ../
base_debug:;
(cd Base_debug; make -f ../Makefile _base_debug "CFLAGS1=-g")
_base_debug: $(LIBPRESTO_D)
$(LIBPRESTO_D): $(P) $(OBJS)
ar rv $(LIBPRESTO_D) $(OBJS)
ranlib $(LIBPRESTO_D)
ln -s `pwd`/$(LIBPRESTO_D) ../
profile:;
(cd Profile; make -f ../Makefile _profile "CFLAGS1=-DPROFILE -O")
_profile: $(LIBPRESTO_P)
$(LIBPRESTO_P): $(P) $(OBJS)
ar rv $(LIBPRESTO_P) $(OBJS)
ranlib $(LIBPRESTO_P)
ln -s `pwd`/$(LIBPRESTO_P) ../
profile_debug:;
(cd Profile_debug; \
make -f ../Makefile _profile_debug "CFLAGS1=-DPROFILE -g")
_profile_debug: $(LIBPRESTO_DP)
$(LIBPRESTO_DP): $(P) $(OBJS)
ar rv $(LIBPRESTO_DP) $(OBJS)
ranlib $(LIBPRESTO_DP)
ln -s `pwd`/$(LIBPRESTO_DP) ../
gprof:;
(cd GProf; make -f ../Makefile _gprof "CFLAGS1=-DGPROF -g -pg")
_gprof: $(LIBPRESTO_GP)
$(LIBPRESTO_GP): $(P) $(OBJS)
ar rv $(LIBPRESTO_GP) $(OBJS)
ranlib $(LIBPRESTO_GP)
ln -s `pwd`/ $(LIBPRESTO_GP) ../
## Global
## Dependencies
shmalloc.o: shmalloc.$(CSUFFIX)
$(LOWERCC) $(CFLAGS) -c shmalloc.$(CSUFFIX)
shbrk.o: shbrk.$(CSUFFIX)
$(LOWERCC) $(CFLAGS) -c shbrk.$(CSUFFIX)
SLOCK.o: SLOCK.$(CSUFFIX)
$(LOWERCC) $(CFLAGS) -c SLOCK.$(CSUFFIX)
atack.o: atack.$(CSUFFIX)
$(LOWERCC) $(CFLAGS) -c atack.$(CSUFFIX)
objects.o: objects.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c objects.$(CCSUFFIX)
process.o: process.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c process.$(CCSUFFIX)
threads.o: threads.$(CCSUFFIX) $(HDRS) $(THREADHDRS)
$(CC) $(CFLAGS) -c threads.$(CCSUFFIX)
mips_lock.o: mips_lock.s
$(AS) -DPRESTO -DPREEMPT -I. -o $@ mips_lock.s
locks.o: locks.$(CCSUFFIX) $(HDRS) locks.h
$(CC) $(CFLAGS) -c locks.$(CCSUFFIX)
swtch.o: swtch.s threads.h objects.h
$(AS) -DPRESTO -DPREEMPT -I. -o swtch.o swtch.s
stack.o: $(HDRS) stack.h
$(CC) $(CFLAGS) -c stack.$(CCSUFFIX)
callstate.o: callstate.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c callstate.$(CCSUFFIX)
scheduler.o: scheduler.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c scheduler.$(CCSUFFIX)
scheduler_sig.o: scheduler_sig.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c scheduler_sig.$(CCSUFFIX)
synchro.o: synchro.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c synchro.$(CCSUFFIX)
#
# the guy with the +e1 must include all header files with virtual funcs
# in them so we get an emission for the vtbls.
#
presto.o: presto.$(CCSUFFIX) $(HDRS) presto.h callstate.h
$(CC) $(CFLAGS) -c presto.$(CCSUFFIX)
misc.o: misc.$(CCSUFFIX) $(HDRS) presto.h
$(CC) $(CFLAGS) -c misc.$(CCSUFFIX)
pstream.o: pstream.$(CCSUFFIX) pstream.h
$(CC) $(CFLAGS) -c pstream.$(CCSUFFIX)
timer.o: timer.$(CCSUFFIX) timer.h pstream.h
$(CC) $(CFLAGS) -c timer.$(CCSUFFIX)
preempt.o: preempt.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c preempt.$(CCSUFFIX)
spinlock.o: spinlock.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c spinlock.$(CCSUFFIX)
main_init.o: main_init.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c main_init.$(CCSUFFIX)
main_main.o: main_main.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c main_main.$(CCSUFFIX)
main_done.o: main_done.$(CCSUFFIX) $(HDRS)
$(CC) $(CFLAGS) -c main_done.$(CCSUFFIX)
debug.o: debug.$(CCSUFFIX) debug.h
$(CC) $(CFLAGS) -c debug.$(CCSUFFIX)